package com.cx.io;

import java.io.*;

public class FileInputStreamExample {
    public static void main(String[] args) {

        // 使用try-with-resources语句，自动关闭文件输入流
/*        try (FileInputStream fis = new FileInputStream("example.txt")) {
            // 定义一个整数变量，用于存储读取的文件内容
            int content;
            // 循环读取文件内容，直到文件末尾
            while ((content = fis.read()) != -1) {
                // 将读取的内容转换为字符并打印
                System.out.print((char) content);
            }
        } catch (IOException e) {
            // 捕获IO异常，并打印异常信息
            e.printStackTrace();
        }*/

        // 使用try-with-resources语句，自动关闭FileOutputStream
/* try (FileOutputStream fos = new FileOutputStream("example.txt",true)) {
            // 定义要写入文件的内容
            String content = "Hello, World!";
            // 将内容转换为字节数组并写入文件
            fos.write(content.getBytes());
        } catch (IOException e) {
            // 捕获并打印IO异常
            e.printStackTrace();
        }*/

        /*try (BufferedReader br = new BufferedReader(new FileReader("example.txt"))) { // 创建一个BufferedReader对象，用于读取example.txt文件
            String line;
            while ((line = br.readLine()) != null) { // 循环读取文件中的每一行
                System.out.println(line); // 输出每一行
            }
        } catch (IOException e) { // 捕获IO异常
            e.printStackTrace(); // 打印异常信息
        }*/

        // 使用try-with-resources语句，自动关闭BufferedWriter
            try (BufferedWriter bw = new BufferedWriter(new FileWriter("example.txt",true))) {
                // 定义要写入的内容
                String content = "Hello, World!";
                // 将内容写入文件
                bw.write(content);
            } catch (IOException e) {
                // 捕获IOException异常，并打印堆栈跟踪
                e.printStackTrace();
            }

    }
}